<?php

namespace app\api\controller;

use app\api\model\Member;

class Base
{

    //注册功能
    public function register()
    {
        $mobile = input('get.mobile');
        $name = input('get.name');
        $password = input('get.password');
        if (empty($mobile)) output_error('学号不能为空');
        if (empty($name)) output_error('姓名不能为空');
        if (empty($password)) output_error('密码不能为空');
        $data = Member::where('member_mobile', '=', $mobile)->find();
        if (!empty($data)) output_error('学号已注册');
        $data = array();
        $data['member_mobile'] = $mobile;
        $data['member_name'] = $name;
        $data['member_password'] = md5($password);
        $data['member_token'] = 1;
        $data['member_gender'] = 1;
        $data['add_time'] = time();
        Member::insert($data);
        output_data('成功');
        //传入学号，姓名，密码注册
        //规则1：学号唯一
        //规则2：密码md5加密
    }

    //找回密码
    public function findpass()
    {
        $mobile = input('get.mobile');
        $name = input('get.name');
        $password = input('get.password');
        if (empty($mobile) || empty($password) || empty($name)) {
            output_error('填完信息');
        }
        $condition = array();
        $condition[] = ['member_mobile', '=' ,$mobile];
        $condition[] = ['member_name', '=' , $name];
        $data = Member::where($condition)->find();
        if (empty($data)) output_error('不匹配');
        Member::where('member_id', '=', $data['member_id'])
            ->update(array('member_password' => md5($password)));
        output_data('1');
        //通过学号，姓名重置密码
        //规则1：密码md5加密
    }

    //登录功能
    public function login()
    {
        $mobile = input('get.mobile');
        $password = input('get.password');
        if (empty($mobile)) output_error('学号不能为空');
        if (empty($password)) output_error('密码不能为空');
        $condition = array();
        $condition[] = ['member_mobile', '=' , $mobile];
        $condition[] = ['member_password', '=', md5($password)];
        $data = Member::where($condition)->find();
        if (empty($data)) output_error('不匹配');
        $token = md5($mobile . time());
        Member::where('member_id', '=', $data['member_id'])
            ->update(array('member_token' => $token));
        output_data($token);
        //通过学号，密码登录，返回Token
        //规则1：token由学号+当前时间戳md5加密生成
    }

}
